1. Field of the Invention
The present invention relates to a servomotor controller for controlling the motion of a driven object which performs a periodic reciprocation, in particular, to a servomotor controller adapted to be used in learning control of angle based method.
2. Description of the Related Art
Learning control is a method for minimizing a control deviation by using a periodic motion. Learning control includes two types, i.e., time based method, wherein the period of time of the periodic motion is determined and a correction amount is calculated at each time period in a learning controller; and angle based method, wherein an amount of movement the periodic motion in one time period is determined and a correction amount at reference positions obtained by dividing the amount of movement. As an application to which learning control of angle based method may be applied, dress processing for a gear cutting machine, oscillation motion for a grinding machine, and inversion control for a servo press machine may be used.
For example, Japanese Unexamined Patent Publication (Kokai) No. 2004-280772 discloses a servomotor drive controller, to which learning control may be effectively applied even when the speed of the servomotor is varied, by storing correction data corresponding to the position of a repetitive commanded pattern and correcting a positional deviation corresponding the position.
In learning control of time based method, the period of time needs to be precisely determined. Therefore, a special programming method is necessary in order to use learning control of time based method. For example, in one programming method, when repetitive motion is to be performed, a command to be generated at a certain time in one period is previously prepared as a table. In such a programming method, the function of a general ISO code (G-code), such as polar coordinate conversion, cannot be used. In the above application, programming with the general ISO code is performed. Therefore, the precise repetitive performance cannot be always realized, whereby learning control of time based method is difficult.
On the other hand, learning control of angle based method does not need to determine the precise period of time, as long as the reference position is given, and therefore angle based method is easier to use than time based method. However, learning control of angle based method can be used only when the reference position varies in one direction (or monotonically varies). In other words, angle based method cannot be used when the reference position varies corresponding to the reciprocating motion. For example, when a driven object reciprocates, the object passes through the same position during the outward motion and return motion. However, the polarity of a generated servo deviation is varied depending on the direction of movement of the object. Therefore, a correction amount generated in the outward motion cannot be used in the return motion, and thus it is necessary to separately calculate a correction amount for the return motion.
In order to solve the problem, Japanese Unexamined Patent Publication (Kokai) No. 2004-280772 discloses a technique wherein different memory sets are prepared depending on the direction of movement of an object, and the memory sets are properly switched so that the learning control of angle based method may be used in controlling the reciprocating motion of the object. Generally, a correction amount calculating part of a learning controller prefetches the memory in order to compensate a delay in a control system. However, in the invention of Japanese Unexamined Patent Publication (Kokai) No. 2004-280772, the memory sets are switched depending on the speed of the object, whereby the memory set in the outward motion and the memory set in the return motion cannot be continuously connected to each other. As a result, a large deviation may be generated when switching the memory sets.